/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package edu.upc.wib.service.impl;

import edu.upc.wib.dao.ContendorDao;
import edu.upc.wib.entity.Contendor;
import edu.upc.wib.service.ContendorService;
import edu.upc.wib.utilitarios.TorneoException;
import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 *
 * @author dangeles
 */
@Service
public class ContendorServiceImpl implements ContendorService {

    private static Logger log = LoggerFactory.getLogger(ContendorServiceImpl.class);
    @Autowired
    private ContendorDao contendorDao;

    @Override
    public List<Contendor> obtenerTodos() {
        log.info("Listando todos los Contendores");
        return contendorDao.obtenerTodos();
    }

    @Override
    public List<Contendor> obtenerContendorPorTorneo(Integer idTorneo) {
        log.info("Listando Contendores por torneo");
        return contendorDao.obtenerContendorPorTorneo(idTorneo);
    }

    @Override
    public Integer crear(Contendor contendor) throws TorneoException {
        log.info("Actualizando torneo");

        String msgError;

        if (!("".equals(contendor.getNombre()) || "".equals(contendor.getTexto())
                || "".equals(contendor.getRutaImagen()) || contendor.getAgrupadorInicial() == 0)) {

            if ((contendor.getRutaImagen().endsWith(".jpg"))||(contendor.getRutaImagen().endsWith(".bmp"))
                    ||(contendor.getRutaImagen().endsWith(".png"))){
                return contendorDao.crear(contendor);
            } else {
                msgError = "El archivo debe ser una Imagen";
            }

        } else {
            msgError = "Existen datos obligatorios en blanco.";
        }

        if (!msgError.isEmpty()) {
            log.error(msgError);
            throw new TorneoException(msgError);
        }
        
        return null;
    }
}
